Avoraciopoctules wrote:Shatner wrote:I love that picture. I don't assume the core RNG for Dom4 is any different from it's predecessors so that pic is almost certainly still accurate.
I was able to download the update that turned my beta-version into the full version yesterday evening.
I'm trying the download through Desura client, and it seems to be working. Regarding the RNG, the manual actually offers the most coherent explanation I've seen yet:
Dominions Random Number (DRN)
Most Dominions game mechanisms use something called the Dominions Random Number (DRN). When a random number is called for, the number used is actually a DRN. This is a roll of two six-sided dice (2d6) but with an additional bonus: if any individual die roll is “6,” one is subtracted, and then that die is re-rolled and added to the result. This is referred to as an “open-ended” 2d6 roll.
Example: The game calls for a DRN. Two dice are rolled and they come up 2,6. Because one of the dice was a “6,” one is subtracted from the total (making 7), and the die is rolled again. But this die is also a 6. So one is subtracted from the total (now up to 12) and a die is rolled again. It is a 4. The final result for this DRN is 16.
Note that if both original dice came up as 6, both would be re-rolled and added as above. If a die keeps coming up 6, it keeps getting re-rolled and added, which can very occasionally lead to large numbers.
Dominions has a lot of situations where something is very unlikely to happen, like a militia soldier hitting an ethereal monster. However, in the real world of Dominions, very few things are actually impossible. To model this fact as closely as can be, the Dominions Random Number was created. With it, it is always possible for such an event to occur, which would not be the case if the roll was not open-ended
In some very few cases, there may only one six-sided die rolled. It is still open-ended, but in this case, the rules refer to it as a drn, in lower-case letters. An example is the dispelling of global enchantments.
There's a bunch of other stuff about probability and how specific mechanics use the DRN. I'm almost tempted to revisit the old thread about a Dominions RPG. How easy would it be to tell an online roller to do this kind of exploding die roll?
The background of that picture, the fractal-looking pattern of black and white, is a very large collection of the outputs of the Dominions random number generator. Not the results as stated in the manual, where 2d6 is added and 6s explode, but the raw 1s, 2s, 3s, 4s, 5s, and 6s that the game's engine generates, which is then fed to various functions (such as the RNG described in the manual) to simulate stuff. You'll notice how there are these regularities to the background, patterns of black and white; those indicate swaths of the output which are identical. So much so that when displayed visually it looks like some geometric image that's used to make a pretty background for a picture. In other words, it is not what an actually random sequence would look like.
From my half-remembrances of an old Shrapnel forum thread, the way the Dom3 engine generates a random number is that it has a very long string of numbers (valued 1 through 6) that were randomly generated and then written down. That string of numbers is then progressed through, one position at a time, and the result is used as the random output. Once the end of the string is reached, the engine just starts reading from the beginning of the string and the whole thing repeats.
What that means is that in the short term, things look random, especially with the Dominions Engine having exploding numbers. The sequence being read from the string might be "6, 3, 1, 5, 4, 2, 3, 2, 6, 6, 6, 3" so you'd get results like 8 (from the exploding six), 1, 5, 4, 2, 3, 2, 18, which could be some knights meleeing militia, whiffing, and then the militia gets a lucky stab and dropping a knight entirely. Later that sequence might be the defense rolls to avoid taking damage from falling frost, or being trampled by Troglodytes. In the long term, however, it means that since the sequence of random numbers doesn't contain "6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6..." you will never, ever, ever get a lowly sword mook stabbing a terrible monster for 999 damage (per the picture). The numbers may be random, and the context in which they are used is essentially random, but the sequence of those numbers is fixed.
This approach has the advantage of being very, very fast to perform, which is good because a 20 turn battle with hundreds of participants will involve tens of thousands of random numbers needing to be generated, summed, subtracted, and compared. And that might just be one large fight among a couple dozen happening THAT TURN in a game that might last in excess of 150 turns. It's much less computationally-expensive than actually generating random numbers on the fly. It has the disadvantage, however, that any sequence not contained in the script will never, ever happen.
While it IS possible that they ditched the Dom3 RNG engine and swapped in a new, more-random replacement, given how Illwinter loves them some recycled code and really seems to hate making changes to their existing engine, I doubt that's the case.